
package Datos;

import Negocio.Defecto;
import Negocio.Foto;
import Negocio.Grado;
import Negocio.Recuperacion;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;


public class DefectoDB {
 public boolean grabar(Defecto defecto) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query = "insert into defecto(id, nombre, id_grado, id_recuperacion, id_foto) values('"+defecto.getId()+"', '"+defecto.getNombre()+", " + defecto.getGrado().getId() +", " + defecto.getRecuperacion().getId()+", " + defecto.getFoto().getCodigo() + "')";
        Boolean resultado = db.ingreso(query);
        db.cerrarConexion();
        return resultado;
    } 
 
 public Defecto buscar(int id) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="select * from defecto where id =" + id;        
        ResultSet resultado = db.seleccion(query);
        Defecto defecto=null;
        Grado grado=null;
        Recuperacion recuperacion = null;
        Foto foto = null;
        if (resultado!=null) {
            resultado.next();
            defecto = new Defecto();
            grado = new Grado();
            defecto.setId(resultado.getInt("id"));           
            defecto.setNombre(resultado.getString("nombre"));
            grado.setId(resultado.getInt("id_grado"));
            recuperacion.setId(resultado.getInt("id_recuperacion"));
            foto.setCodigo(resultado.getInt("id_foto"));
            defecto.setGrado(grado);
            defecto.setRecuperacion(recuperacion);
            defecto.setFoto(foto);
        } 
        db.cerrarConexion();
        return defecto;
        
    }
 
    public ArrayList listar() throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="select * from defecto ";
        ResultSet resultado = db.seleccion(query);
        Defecto defecto=null;
        Grado grado=null;
        Recuperacion recuperacion = null;
        Foto foto = null;
        ArrayList todos=new ArrayList();
        while (resultado.next()) {
            defecto.setId(resultado.getInt(1));           
            grado.setId(resultado.getInt(3));
            recuperacion.setId(resultado.getInt(4));
            foto.setCodigo(resultado.getInt(5));
            defecto.setGrado(grado);
            defecto.setRecuperacion(recuperacion);
            defecto.setFoto(foto);
            todos.add(defecto);
        }
        db.cerrarConexion();
        return todos;
    }
 
 
}
